An optical computer mouse uses a light source and image sensor to detect mouse movement relative to an underlying tracking surface to allow a user to manipulate a location of a virtual pointer on a computing device display. Light from the light source is directed onto the tracking surface, and the image sensor is used to acquire a series of image of the tracking surface. Movement is tracked by tracking changes in the location(s) of one or more surface features identified in the images via a controller.
An optical mouse relies upon the presence of some degree of surface roughness to allow for the detection of tracking features on a surface. However, surfaces such as glass may not have enough surface roughness to allow motion to be reliably tracked. Various solutions to this problem have been proposed. For example, some proposed solutions may utilize a secondary device (e.g. a “puck”) placed on a surface to allow tracking to be accomplished via triangulation. However, the use of such a secondary device may be inconvenient for a user, and add additional cost to such a mouse.